package com.rj.ability.leqi.adapter.domain.aisino;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.rj.ability.leqi.req.CxhzqrdlbReq;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

/**
 * 6.8数字化电子红字确认单下载
 *
 * @author YFX_RANLUBO
 * @date 2024/04/30 15:42
 **/
@Data
@AutoMapper(target = CxhzqrdlbReq.class, reverseConvertGenerate = false)
public class AisinoQdhzqrdxzReq {

    /**
     * 发票种类	3	否
     * 081 数字化电子专票
     * 082 数字化电子普票
     */
    @JsonProperty("invoiceTypeCode")
    private String fppzDm;
    /**
     * 录入日期起	10	否	查询条件YYYYMMDD 不填，默认查本月
     **/
    @JsonProperty("fillInBeginDate")
    private String lrrqq;
    /**
     * 录入日期止	10	否 查询条件YYYYMMDD 不填，默认查本月
     **/
    @JsonProperty("fillInEndDate")
    private String lrrqz;
    /**
     * 购方税号	20	条件必传	用户角色类型
     * 2我是购方：必传
     **/
    @JsonProperty("buyerTaxID")
    private String gmfnsrsbh;
    /**
     * 销方税号	20	条件必传	用户角色类型
     * 1我是销方：必传
     **/
    @JsonProperty("sellerTaxID")
    private String xsfnsrsbh;
    /**
     * 红字确认单编号	32	否
     **/
    @JsonProperty("redLetterInfoFormNum")
    private String hzfpxxqrdbh;
    /**
     * 红字确认单uuid	32	否
     **/
    private String applicationFormCode;
    /**
     * 用户角色类型	1	是
     * 1我是销方 2我是购方
     **/
    @JsonProperty("infoFormScope")
    private String yhjslx;
    /**
     * 页号	10	是	从1开始
     **/
    @JsonProperty("pageNO")
    private Integer pageNumber = 1;
    /**
     * 每页条数	10	是	每页条数  缺省
     **/
    @JsonProperty("numOfPages")
    private Integer pageSize = 10;
    /**
     * 01：无需确认  02：销方录入待购方确认  03：购方录入待销方确认
     * 04：购销双方已确认  05：作废（销方录入购方否认）  06：作废（购方录入销方否认）
     * 07：作废（超72小时未确认）  08：作废（发起方撤销）  09：作废（确认后撤销）
     * 10：作废（异常凭证）
     * aisino:
     * 确认单状态代码	100	否
     * TZD0000：无需确认
     * TZD1000：购销双方已确认
     * TZDZB02：销方录入待购方确认
     * TZDZB03：购方录入待销方确认
     * TZDZB07：作废（超72小时未确认）
     * TZDZB05：作废（销方录入购方否认）
     * TZDZB06：作废（购方录入销方否认）
     * TZDZB08：作废（发起方撤销）
     * TZDZB09：作废（确认后撤销）
     * TZDZB10：作废（异常凭证）
     **/
    @JsonProperty("hzqrxxztDm")
    private String statusCode;
    /**
     * 录入方身份	2	否	0：销方  1：购方  仅用于乐企接口
     **/
    @JsonProperty("requestorIdentity")
    private String lrfsf;
    /**
     * 蓝字发票代码	12	否	仅用于乐企接口
     **/
    @JsonProperty("originalInvoiceCode")
    private String lzfpdm;
    /**
     * 蓝字发票号码	20	否	仅用于乐企接口
     **/
    @JsonProperty("originalInvoiceNo")
    private String lzfphm;
    /**
     * 是否下载明细	1	否
     * 下载明细：Y；
     * 不下载明细：N；
     * 不传时默认Y。下载明细指的是红字确认单中商品行信息,如只想要下载确认单状态传N即可。
     **/
    private String downloadDetails = "Y";

}
